package com.project.service.saleManagerService;

import com.github.pagehelper.PageInfo;
import com.project.bean.SaleOrderBean;
import com.project.bean.ShopCarBean;

import java.time.LocalDate;
import java.util.Collection;

/**
 * 销售出库业务接口
 */
public interface ISaleOrderService {
    public int PAGESIZE = 3;

    /**
     * 出库，将购物车的商品和数量给订单的详情集合，
     * 通过商品名称在库存表查询，更新库存数量为原始数量减去购物车出库数量
     * @param salesOrder
     * @param shopList
     */
    public void addSaleOrder(SaleOrderBean salesOrder, Collection<ShopCarBean> shopList);

    /**
     * 根据销售订单id查询详细信息
     * @param saleOrderId 销售订单id
     * @return 销售详情对象
     */
    public SaleOrderBean findById(int saleOrderId);

    /**
     * 动态查询订单信息
     * @param pageNO 分页
     * @param customerName 客户名称
     * @param startDate 起始日期
     * @param endDate 结束日期
     * @return 订单集合
     */
    public PageInfo<SaleOrderBean> findByItem(int pageNO, String customerName, LocalDate startDate, LocalDate endDate);


}
